home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / C / Applications / Python 1.3.3 / Python 133 SRC / Demo / www / getpeer.c < prev    next >
C/C++ Source or Header  |  1996-03-12  |  464b  |  23 lines

  1. #include <sys/types.h>
  2. #include <sys/socket.h>
  3. #include <netinet/in.h>
  4. #include <sys/un.h>
  5. #include <netdb.h>
  6.  
  7. main() {
  8.     struct sockaddr_in addr;
  9.     int addrlen;
  10.     long x;
  11.  
  12.     addrlen = sizeof addr;
  13.     if (getpeername(0, (struct sockaddr *) &addr, &addrlen) < 0) {
  14.         perror("getpeername(0)");
  15.         exit(1);
  16.     }
  17.     x = ntohl(addr.sin_addr.s_addr);
  18.     printf("%d.%d.%d.%d\n",
  19.         (int) (x>>24) & 0xff, (int) (x>>16) & 0xff,
  20.         (int) (x>> 8) & 0xff, (int) (x>> 0) & 0xff);
  21.     exit(0);
  22. }
  23.